package com.fengmi.service;

import com.fengmi.dto.PageDTO;
import com.fengmi.entity.SysUser;
import com.fengmi.vo.PageResultVO;
import com.fengmi.vo.ResultVO;

import java.util.List;

/**
 * @Author 123
 * @Date 2022/2/10 11:30
 * @Version 1.0
 */

public interface SysUserService {
    //分页及条件查询所有的用户信息
    PageResultVO<SysUser> findAllUserByPage(PageDTO<SysUser> pageDTO);

    //保存添加用户基础信息
    public ResultVO addUser(SysUser sysUser);

    //修改用户的启用状态
    public ResultVO updateUserEnabled(String userId, Integer enabled);

    //修改用户信息
    public ResultVO updateUserInfo(SysUser sysUser);

    //通过用户id查询用户的角色
    public ResultVO selectUserRolesById(String userId);

    //给用户分配角色
    public ResultVO allocRolesToUser(String userId, String[] roleIds);

    //通过用户id删除
    public ResultVO deleteUser(String userId);

    //登录颁发令牌
    public ResultVO login(SysUser loginUser);

    //校验令牌
    public ResultVO verify(String token);

    //查所有
    public List<SysUser> findAll();
}
